﻿using RpcStore.Model.DB;
using RpcStore.RemoteModel.Transmit.Model;

namespace RpcStore.DAL
{
    public interface IServerTransmitConfigDAL
    {
        long[] CheckIsConfig (long schemeId, long[] serverId);
        void Add (TransmitAdd add);
        ServerTransmitConfigModel Get (long schemeId, long serverId);
        void Clear (long schemeId);
        void Clear (long[] schemeId);
        long[] GetIds (long schemeId);
        long[] GetIds (long[] schemeId);
        void Delete (long[] ids);
        bool CheckIsExists (long schemeId);
        void Set (long id, TransmitConfig[] configs);
        void Delete (long id);
        ServerTransmitConfigModel Get (long id);
        ServerTransmitConfigModel[] Gets (long schemeId);
        ServerTransmitConfigModel[] Gets (long schemeId, long[] serverId);
        bool CheckIsExists (long schemeId, long serverId);
    }
}